1. Field of the Invention
The present invention generally relates to information systems and, more particularly, to database management systems for security and authorization development tools.
2. Description of the Related Art
Conventional database management systems utilizing a relational (related) database for storing and accessing information relevant to a particular application are well-known in the art. These relational databases are typically designed such that information can be stored in one particular file that relates to information stored in another file within the same database system. A database system may be comprised of files accessible over communication networks as well as locally. Information stored in related files allow for the quick retrieval of more complex information than would otherwise be possible, such as information continuously updated in a database system. Information stored in such a database provides a convenient method for authorized users to retrieve information by typing in a query with knowledge of the underlying format.
Moreover, conventional database systems maintain their data in a durable storage mechanism such as a disk drive. Usually, the database system will also have a non-durable copy of an active portion of the database in a volatile memory cache wherein the data in the volatile memory cache can be rapidly accessed, but can also be destroyed and lost in the event of a system crash, program failure, power surge or similar abnormal termination. In order to maintain the integrity of the database, updates to the database system must be guaranteed to be stored, i.e., committed, in the durable storage mechanism.
One application for database systems is workflow systems. Workflow systems effect business processes by controlling the scheduling and parameters of activities, acquiring their results, and using the results in determining other activities to be run. A business process is a description of the sequencing, timing, dependency, data, physical agent allocation, business rule, and organization policy enforcement requirements of business activities needed to enact work. Most workflow systems utilize relational, object-oriented, network or hierarchical database management systems to store data relating to the business process.
In general, workflow systems perform a wide range of tasks. For example, they can provide a method for defining and managing the flow of a work process or support the definition of resources and their attributes. Additionally, workflow systems can assign resources to work, determine which steps will be next executed within a work process, when they will be executed, and can ensure that the workflow process continues until proper termination. Furthermore, workflow systems can notify resources about pending work and enforce administrative policies such as tracking execution and support user inquiries of status.
Oftentimes it is useful for some workflow process applications to have access to historical data regarding data changes within the system. Historical data takes the form of an audit trail for completed workflow processes and is useful to the collection of statistical data for process and resource bottleneck analysis, flow optimization and automatic workload balancing.
Since data in a workflow system represents work that needs to be done or has already been done, the database generally needs to provide a high degree of reliability. Loss of the data related to a completed work event can mean the loss of the work performed by the work event. It is also quite useful for some applications to provide convenient access to historical data from the system.
In modern data processing environments, a client's data is often distributed among a plurality of heterogeneous database systems. Heterogeneous database systems are database systems that have different data definition and manipulation procedures, security procedures, system management approaches, capabilities, etc. Examples of heterogeneous database systems include DB2®, available from IBM, Armonk, N.Y., USA; Oracle®, available from Oracle Corp., Redwood Shores, Calif., USA: and Sybase®, available from Sybase Inc., Emeryville, Calif., USA, etc. Such heterogeneous database systems, when used together, collectively represent a heterogeneous, distributed database environment (or system). Heterogeneous, distributed database systems are also sometimes called federated database systems and/or multi-database systems.
In order to enhance user-friendliness, it is preferred that clients be provided with a common interface to all of the heterogeneous database systems. In other words, it is preferred that clients be under the illusion that they are interacting within a single database system.
However, one of the inherent weaknesses of the conventional database systems is the inability to provide updated tracking and status guidelines and progression of ongoing projects as they occur in a multi-level corporate environment, and in the security and authorization environment, in particular. Moreover, there remains a need for a new and improved database system to track software and hardware fulfillment development and software and hardware fulfillment production, and to communicate any modifications of these operations to user profiles as they pertain to new functional releases of software programs. Furthermore, there is a need to consolidate the data used in the development of software programs in order to provide for a more efficient auditing procedure, and to ensure that access to software development-related data remains secure, and access to such data is limited to those on a need-to-know basis.